<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::gpu::Octree类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1gpu_1_1_octree.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pub-attribs">Public 属性</a> &#124;
<a href="#pri-attribs">Private 属性</a> &#124;
<a href="classpcl_1_1gpu_1_1_octree-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::gpu::Octree类 参考</div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classpcl_1_1gpu_1_1_octree.html" title="Octree implementation on GPU. It suppors parallel building and paralel batch search as well .">Octree</a> implementation on GPU. It suppors parallel building and paralel batch search as well . <br  />
  
 <a href="classpcl_1_1gpu_1_1_octree.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="octree_8hpp_source.html">octree.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:aaef633c03e07b4ccf653afa6f314be75"><td class="memItemLeft" align="right" valign="top"><a id="aaef633c03e07b4ccf653afa6f314be75"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1gpu_1_1_octree.html">Octree</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aaef633c03e07b4ccf653afa6f314be75">Ptr</a></td></tr>
<tr class="memdesc:aaef633c03e07b4ccf653afa6f314be75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Types <br /></td></tr>
<tr class="separator:aaef633c03e07b4ccf653afa6f314be75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefdc3bedd2526f69052cef1541c73019"><td class="memItemLeft" align="right" valign="top"><a id="aefdc3bedd2526f69052cef1541c73019"></a>
typedef <a class="el" href="structpcl_1_1_point_x_y_z.html">pcl::PointXYZ</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a></td></tr>
<tr class="memdesc:aefdc3bedd2526f69052cef1541c73019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point typwe supported <br /></td></tr>
<tr class="separator:aefdc3bedd2526f69052cef1541c73019"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2584f9e71b717c8c891415199661a2c3"><td class="memItemLeft" align="right" valign="top"><a id="a2584f9e71b717c8c891415199661a2c3"></a>
typedef <a class="el" href="classpcl_1_1gpu_1_1_device_array.html">DeviceArray</a>&lt; <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a2584f9e71b717c8c891415199661a2c3">PointCloud</a></td></tr>
<tr class="memdesc:a2584f9e71b717c8c891415199661a2c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point cloud supported <br /></td></tr>
<tr class="separator:a2584f9e71b717c8c891415199661a2c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace4601c42e12b649d165f7fb8ec23f13"><td class="memItemLeft" align="right" valign="top"><a id="ace4601c42e12b649d165f7fb8ec23f13"></a>
typedef <a class="el" href="classpcl_1_1gpu_1_1_device_array.html">DeviceArray</a>&lt; <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a></td></tr>
<tr class="memdesc:ace4601c42e12b649d165f7fb8ec23f13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point Batch query cloud type <br /></td></tr>
<tr class="separator:ace4601c42e12b649d165f7fb8ec23f13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8361a7ba440cf6357ccdb0af72d4e7d6"><td class="memItemLeft" align="right" valign="top"><a id="a8361a7ba440cf6357ccdb0af72d4e7d6"></a>
typedef <a class="el" href="classpcl_1_1gpu_1_1_device_array.html">DeviceArray</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a8361a7ba440cf6357ccdb0af72d4e7d6">Radiuses</a></td></tr>
<tr class="memdesc:a8361a7ba440cf6357ccdb0af72d4e7d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point Radiuses for batch query <br  />
 <br /></td></tr>
<tr class="separator:a8361a7ba440cf6357ccdb0af72d4e7d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cc45fda594a62506d313e6e0e4fae42"><td class="memItemLeft" align="right" valign="top"><a id="a6cc45fda594a62506d313e6e0e4fae42"></a>
typedef <a class="el" href="classpcl_1_1gpu_1_1_device_array.html">DeviceArray</a>&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a6cc45fda594a62506d313e6e0e4fae42">Indices</a></td></tr>
<tr class="memdesc:a6cc45fda594a62506d313e6e0e4fae42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point Indices for batch query <br  />
 <br /></td></tr>
<tr class="separator:a6cc45fda594a62506d313e6e0e4fae42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a625a0a28448f3c4a988d914483e2bbc3"><td class="memItemLeft" align="right" valign="top"><a id="a625a0a28448f3c4a988d914483e2bbc3"></a>
typedef <a class="el" href="classpcl_1_1gpu_1_1_device_array.html">DeviceArray</a>&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a625a0a28448f3c4a988d914483e2bbc3">ResultSqrDists</a></td></tr>
<tr class="memdesc:a625a0a28448f3c4a988d914483e2bbc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Point Sqrt distances array type <br /></td></tr>
<tr class="separator:a625a0a28448f3c4a988d914483e2bbc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:aa53266305b1eeffb82a885e2560637a4"><td class="memItemLeft" align="right" valign="top"><a id="aa53266305b1eeffb82a885e2560637a4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aa53266305b1eeffb82a885e2560637a4">Octree</a> ()</td></tr>
<tr class="memdesc:aa53266305b1eeffb82a885e2560637a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:aa53266305b1eeffb82a885e2560637a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5758ce6fbd36ba187c96249e44337f5e"><td class="memItemLeft" align="right" valign="top"><a id="a5758ce6fbd36ba187c96249e44337f5e"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a5758ce6fbd36ba187c96249e44337f5e">~Octree</a> ()</td></tr>
<tr class="memdesc:a5758ce6fbd36ba187c96249e44337f5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Denstructor. <br /></td></tr>
<tr class="separator:a5758ce6fbd36ba187c96249e44337f5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95840cd806f83595d79956e72d1c3e20"><td class="memItemLeft" align="right" valign="top"><a id="a95840cd806f83595d79956e72d1c3e20"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a95840cd806f83595d79956e72d1c3e20">setCloud</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a2584f9e71b717c8c891415199661a2c3">PointCloud</a> &amp;cloud_arg)</td></tr>
<tr class="memdesc:a95840cd806f83595d79956e72d1c3e20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets cloud for which octree is built <br /></td></tr>
<tr class="separator:a95840cd806f83595d79956e72d1c3e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7d90421b68df2f155aa9119d561c1d4"><td class="memItemLeft" align="right" valign="top"><a id="ad7d90421b68df2f155aa9119d561c1d4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#ad7d90421b68df2f155aa9119d561c1d4">build</a> ()</td></tr>
<tr class="memdesc:ad7d90421b68df2f155aa9119d561c1d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs parallel octree building <br /></td></tr>
<tr class="separator:ad7d90421b68df2f155aa9119d561c1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed28b9aacd254a421bacfaf775d03ec5"><td class="memItemLeft" align="right" valign="top"><a id="aed28b9aacd254a421bacfaf775d03ec5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aed28b9aacd254a421bacfaf775d03ec5">isBuilt</a> ()</td></tr>
<tr class="memdesc:aed28b9aacd254a421bacfaf775d03ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if tree has been built <br /></td></tr>
<tr class="separator:aed28b9aacd254a421bacfaf775d03ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a04460da9927a707dcf02699bc77a5b"><td class="memItemLeft" align="right" valign="top"><a id="a5a04460da9927a707dcf02699bc77a5b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a5a04460da9927a707dcf02699bc77a5b">internalDownload</a> ()</td></tr>
<tr class="memdesc:a5a04460da9927a707dcf02699bc77a5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Downloads <a class="el" href="classpcl_1_1gpu_1_1_octree.html" title="Octree implementation on GPU. It suppors parallel building and paralel batch search as well .">Octree</a> from GPU to search using CPU fucntion. It use usefull for signle (not-batch) search <br /></td></tr>
<tr class="separator:a5a04460da9927a707dcf02699bc77a5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2ff38af8197107a5ce362df39869f20"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aa2ff38af8197107a5ce362df39869f20">radiusSearchHost</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &amp;center, float radius, std::vector&lt; int &gt; &amp;out, int max_nn=INT_MAX)</td></tr>
<tr class="memdesc:aa2ff38af8197107a5ce362df39869f20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs search of all points wihtin given radius on CPU. It call <em>internalDownload</em> if nessesary  <a href="classpcl_1_1gpu_1_1_octree.html#aa2ff38af8197107a5ce362df39869f20">更多...</a><br /></td></tr>
<tr class="separator:aa2ff38af8197107a5ce362df39869f20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac41094b3ee693ebcfdaafb050a4026bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#ac41094b3ee693ebcfdaafb050a4026bc">approxNearestSearchHost</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &amp;query, int &amp;out_index, float &amp;sqr_dist)</td></tr>
<tr class="memdesc:ac41094b3ee693ebcfdaafb050a4026bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs approximate neares neighbor search on CPU. It call <em>internalDownload</em> if nessesary  <a href="classpcl_1_1gpu_1_1_octree.html#ac41094b3ee693ebcfdaafb050a4026bc">更多...</a><br /></td></tr>
<tr class="separator:ac41094b3ee693ebcfdaafb050a4026bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6ce56dd79bdee021fa71b8a17694d76"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#af6ce56dd79bdee021fa71b8a17694d76">radiusSearch</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;centers, float radius, int max_results, <a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;result) const</td></tr>
<tr class="memdesc:af6ce56dd79bdee021fa71b8a17694d76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs batch radius search on GPU  <a href="classpcl_1_1gpu_1_1_octree.html#af6ce56dd79bdee021fa71b8a17694d76">更多...</a><br /></td></tr>
<tr class="separator:af6ce56dd79bdee021fa71b8a17694d76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0f2ef1712c6d39b47fe3429ef8bb85e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#ad0f2ef1712c6d39b47fe3429ef8bb85e">radiusSearch</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;centers, const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a8361a7ba440cf6357ccdb0af72d4e7d6">Radiuses</a> &amp;radiuses, int max_results, <a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;result) const</td></tr>
<tr class="memdesc:ad0f2ef1712c6d39b47fe3429ef8bb85e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs batch radius search on GPU  <a href="classpcl_1_1gpu_1_1_octree.html#ad0f2ef1712c6d39b47fe3429ef8bb85e">更多...</a><br /></td></tr>
<tr class="separator:ad0f2ef1712c6d39b47fe3429ef8bb85e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d3b9a8467137c7898bcf8a63ad69f7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a9d3b9a8467137c7898bcf8a63ad69f7e">radiusSearch</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;centers, const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a6cc45fda594a62506d313e6e0e4fae42">Indices</a> &amp;indices, float radius, int max_results, <a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;result) const</td></tr>
<tr class="memdesc:a9d3b9a8467137c7898bcf8a63ad69f7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs batch radius search on GPU  <a href="classpcl_1_1gpu_1_1_octree.html#a9d3b9a8467137c7898bcf8a63ad69f7e">更多...</a><br /></td></tr>
<tr class="separator:a9d3b9a8467137c7898bcf8a63ad69f7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f8d000384e2c4df3d6fa50a41d922f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a6f8d000384e2c4df3d6fa50a41d922f4">approxNearestSearch</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;queries, <a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;result) const</td></tr>
<tr class="memdesc:a6f8d000384e2c4df3d6fa50a41d922f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch approximate nearest search on GPU  <a href="classpcl_1_1gpu_1_1_octree.html#a6f8d000384e2c4df3d6fa50a41d922f4">更多...</a><br /></td></tr>
<tr class="separator:a6f8d000384e2c4df3d6fa50a41d922f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea2387c273c96c66ddbc86b2f7093651"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#aea2387c273c96c66ddbc86b2f7093651">nearestKSearchBatch</a> (const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;queries, int k, <a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;results) const</td></tr>
<tr class="memdesc:aea2387c273c96c66ddbc86b2f7093651"><td class="mdescLeft">&#160;</td><td class="mdescRight">Batch exact k-nearest search on GPU for k == 1 only!  <a href="classpcl_1_1gpu_1_1_octree.html#aea2387c273c96c66ddbc86b2f7093651">更多...</a><br /></td></tr>
<tr class="separator:aea2387c273c96c66ddbc86b2f7093651"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9855f3324f5d796f57d8bb44b640a54d"><td class="memItemLeft" align="right" valign="top"><a id="a9855f3324f5d796f57d8bb44b640a54d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1gpu_1_1_octree.html#a9855f3324f5d796f57d8bb44b640a54d">clear</a> ()</td></tr>
<tr class="memdesc:a9855f3324f5d796f57d8bb44b640a54d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Desroys octree and release all resources <br /></td></tr>
<tr class="separator:a9855f3324f5d796f57d8bb44b640a54d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public 属性</h2></td></tr>
<tr class="memitem:ab8d9439cb3e10fce0b62a9836d7f3787"><td class="memItemLeft" align="right" valign="top"><a id="ab8d9439cb3e10fce0b62a9836d7f3787"></a>
const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a2584f9e71b717c8c891415199661a2c3">PointCloud</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>cloud_</b></td></tr>
<tr class="separator:ab8d9439cb3e10fce0b62a9836d7f3787"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private 属性</h2></td></tr>
<tr class="memitem:aae68dea44e44ca3ab82e7338baf6b7ef"><td class="memItemLeft" align="right" valign="top"><a id="aae68dea44e44ca3ab82e7338baf6b7ef"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>impl</b></td></tr>
<tr class="separator:aae68dea44e44ca3ab82e7338baf6b7ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4d8af63ecfb6b1216bbc6bd86a0582c"><td class="memItemLeft" align="right" valign="top"><a id="ad4d8af63ecfb6b1216bbc6bd86a0582c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>built_</b></td></tr>
<tr class="separator:ad4d8af63ecfb6b1216bbc6bd86a0582c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p><a class="el" href="classpcl_1_1gpu_1_1_octree.html" title="Octree implementation on GPU. It suppors parallel building and paralel batch search as well .">Octree</a> implementation on GPU. It suppors parallel building and paralel batch search as well . <br  />
 </p>
<dl class="section author"><dt>作者</dt><dd>Anaoly Baksheev, Itseez, <a href="#" onclick="location.href='mai'+'lto:'+'myn'+'am'+'e.m'+'ys'+'urn'+'am'+'e@m'+'yc'+'omp'+'an'+'y.c'+'om'; return false;">mynam<span style="display: none;">.nosp@m.</span>e.my<span style="display: none;">.nosp@m.</span>surna<span style="display: none;">.nosp@m.</span>me@m<span style="display: none;">.nosp@m.</span>ycomp<span style="display: none;">.nosp@m.</span>any.<span style="display: none;">.nosp@m.</span>com</a> </dd></dl>
</div><h2 class="groupheader">成员函数说明</h2>
<a id="a6f8d000384e2c4df3d6fa50a41d922f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f8d000384e2c4df3d6fa50a41d922f4">&#9670;&nbsp;</a></span>approxNearestSearch()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::approxNearestSearch </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;&#160;</td>
          <td class="paramname"><em>queries</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch approximate nearest search on GPU </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">queries</td><td>array of centers </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>array of results ( one index for each query ) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac41094b3ee693ebcfdaafb050a4026bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac41094b3ee693ebcfdaafb050a4026bc">&#9670;&nbsp;</a></span>approxNearestSearchHost()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::approxNearestSearchHost </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>out_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float &amp;&#160;</td>
          <td class="paramname"><em>sqr_dist</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs approximate neares neighbor search on CPU. It call <em>internalDownload</em> if nessesary </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">query</td><td>3D point for which neighbour is be fetched <br  />
 </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out_index</td><td>neighbour index </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">sqr_dist</td><td>square distance to the neighbour returned </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aea2387c273c96c66ddbc86b2f7093651"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea2387c273c96c66ddbc86b2f7093651">&#9670;&nbsp;</a></span>nearestKSearchBatch()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::nearestKSearchBatch </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;&#160;</td>
          <td class="paramname"><em>queries</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;&#160;</td>
          <td class="paramname"><em>results</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Batch exact k-nearest search on GPU for k == 1 only! </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">queries</td><td>array of centers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">k</td><td>nubmer of neighbors (only k == 1 is supported) </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">results</td><td>array of results </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9d3b9a8467137c7898bcf8a63ad69f7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d3b9a8467137c7898bcf8a63ad69f7e">&#9670;&nbsp;</a></span>radiusSearch() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::radiusSearch </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;&#160;</td>
          <td class="paramname"><em>centers</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a6cc45fda594a62506d313e6e0e4fae42">Indices</a> &amp;&#160;</td>
          <td class="paramname"><em>indices</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>radius</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_results</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs batch radius search on GPU </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">centers</td><td>array of centers <br  />
 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">indices</td><td>indices for centers array (only for these points search is performed) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radius</td><td>radius for all queries </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max_results</td><td>max number of returned points for each querey </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>results packed to signle array </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad0f2ef1712c6d39b47fe3429ef8bb85e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0f2ef1712c6d39b47fe3429ef8bb85e">&#9670;&nbsp;</a></span>radiusSearch() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::radiusSearch </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;&#160;</td>
          <td class="paramname"><em>centers</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#a8361a7ba440cf6357ccdb0af72d4e7d6">Radiuses</a> &amp;&#160;</td>
          <td class="paramname"><em>radiuses</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_results</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs batch radius search on GPU </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">centers</td><td>array of centers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radiuses</td><td>array of radiuses </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max_results</td><td>max number of returned points for each querey </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>results packed to signle array </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af6ce56dd79bdee021fa71b8a17694d76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6ce56dd79bdee021fa71b8a17694d76">&#9670;&nbsp;</a></span>radiusSearch() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::radiusSearch </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#ace4601c42e12b649d165f7fb8ec23f13">Queries</a> &amp;&#160;</td>
          <td class="paramname"><em>centers</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>radius</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_results</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structpcl_1_1gpu_1_1_neighbor_indices.html">NeighborIndices</a> &amp;&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs batch radius search on GPU </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">centers</td><td>array of centers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radius</td><td>radius for all queries </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max_results</td><td>max number of returned points for each querey </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>results packed to signle array </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa2ff38af8197107a5ce362df39869f20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2ff38af8197107a5ce362df39869f20">&#9670;&nbsp;</a></span>radiusSearchHost()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void pcl::gpu::Octree::radiusSearchHost </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpcl_1_1gpu_1_1_octree.html#aefdc3bedd2526f69052cef1541c73019">PointType</a> &amp;&#160;</td>
          <td class="paramname"><em>center</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>radius</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max_nn</em> = <code>INT_MAX</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs search of all points wihtin given radius on CPU. It call <em>internalDownload</em> if nessesary </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">center</td><td>center of sphere </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">radius</td><td>radious of sphere </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">out</td><td>indeces of points within give sphere </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">max_nn</td><td>maximum numver of results returned </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>gpu/octree/include/pcl/gpu/octree/<a class="el" href="octree_8hpp_source.html">octree.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><b>gpu</b></li><li class="navelem"><a class="el" href="classpcl_1_1gpu_1_1_octree.html">Octree</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
